package com.info.zhiduoduo.repository.entity.crowdsource;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableLogic;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * 智众包项目人员信息
 * </p>
 *
 * @author bob
 * @since 2019-09-25
 */
@Data
@Accessors(chain = true)
@TableName("zdd_crowdsource_project_item")
public class CrowdsourceProjectItem extends Model<CrowdsourceProjectItem> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 智众包项目id
     */
    private Integer projectid;
    /**
     * 用户id
     */
    private Integer userid;
    /**
     * 用户类型 1:众包自然人 2:工作室
     */
    @TableField("user_type")
    private Integer userType;
    /**
     * 创客姓名
     */
    private String realname;
    /**
     * 创客工作室
     */
    private String username;
    /**
     * 项目金额
     */
    @TableField("project_amount")
    private BigDecimal projectAmount;
    /**
     * 项目内容
     */
    @TableField("project_content")
    private String projectContent;
    /**
     * 费率
     */
    @TableField("tax_rate")
    private Double taxRate;
    /**
     * 综合费用（已包含了项目金额、服务费、合伙人佣金和税费），就是应付金额
     */
    @TableField("integrated_tax_fee")
    private BigDecimal integratedTaxFee;
    /**
     * 项目服务费
     */
    @TableField("project_service_charge")
    private BigDecimal projectServiceCharge;
    /**
     * 合伙人智众包佣金
     */
    @TableField("partner_brokerage")
    private BigDecimal partnerBrokerage;
    /**
     * 保证金金额
     */
    @TableField("deposit_amount")
    private BigDecimal depositAmount;
    /**
     * 保证金比例
     */
    @TableField("deposit_rate")
    private Double depositRate;
    /**
     * 逻辑删除 0：正常 1：已删除
     */
    @TableLogic
    private Integer deleted;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 更新时间
     */
    private Date updatetime;
    /**
     * 支付凭证
     */
    @TableField("pay_voucher")
    private String payVoucher;
    /**
     * 支付备注
     */
    @TableField("pay_remarks")
    private String payRemarks;
    /**
     * 项目证据链URL
     */
    @TableField("project_file_url")
    private String projectFileUrl;
    /**
     * 竞标开始时间
     */
    private Date biddingstart;
    /**
     * 竞标结束时间
     */
    private Date biddingend;
    /**
     * 公开招标审核结果备注
     */
    private String bidVerifyRemark;
    /**
     * 状态 1.新建 2.已发布 3.竞标中 4.竞标失败 5.竞标结束 6.进行中 7.已完成 8.失败 9.拒绝
     */
    private Integer state;
    /**
     * 项目交付文件路径
     */
    @TableField("delivery_path")
    private String deliveryPath;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
